package cn.com.lyj6851.modules.edu.vo;

import cn.com.lyj6851.modules.edu.domain.EduChapter;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author Administrator
 */
@Data
@ApiModel(value = "课程基本信息", description = "编辑课程基本信息的表单对象")
public class CourseInfoVo implements Serializable {

    private static final long serialVersionUID = 1879615166082159306L;
    @ApiModelProperty(value = "课程ID")
    private String id;

    @ApiModelProperty(value = "课程讲师ID")
    private String teacherId;

    @ApiModelProperty(value = "课程专业ID")
    private String subjectId;

    @ApiModelProperty(value = "一级分类ID")
    private String subjectParentId;

    @ApiModelProperty(value = "课程标题")
    @JsonProperty(value = "storeName")
    private String title;

    @ApiModelProperty(value = "简短介绍")
    private String storeInfo;

    @ApiModelProperty(value = "课程销售价格，设置为0则可免费观看")
    private BigDecimal price;

    private BigDecimal vipPrice;

    /** 市场价 */
    @ApiModelProperty(value = "市场价")
    private BigDecimal otPrice;

    @ApiModelProperty(value = "总课时")
    private Integer lessonNum;

    @ApiModelProperty(value = "课程封面图片路径")
    @JsonProperty(value = "image")
    private String cover;

    @ApiModelProperty(value = "浏览数量")
    private Long viewCount;

    @ApiModelProperty(value = "课程简介")
    private String description;

    @JsonProperty(value = "category")
    private EduSubjectVo eduSubjectVo;

    @JsonProperty(value = "chapters")
    private List<EduChapter> eduChapter;

    @JsonProperty(value = "videos")
    private Object eduVideos;

    @ApiModelProperty(value = "类型(收藏(collect）、点赞(like))")
    @JsonProperty(value = "favorite")
    private String type;
}
